#include "InformacionCarrera.h"

using namespace modelo;

InformacionCarrera::InformacionCarrera(string otroNombre) 
{
	this->nombre = otroNombre;
};

bool InformacionCarrera::OptativasCompletas(int cantCreditosOptativas, int cantMateriasOptativas)
{
	bool cumpleRestriccionCreditos = true;
	bool cumpleRestriccionCantMaterias = true;
	
	if(this->HayRestriccionesDeCreditosParaOptativas())

	{
		cumpleRestriccionCreditos = this->creditosMateriasOptativas <= cantCreditosOptativas; 
	}

	if(this->HayRestriccionesDeCantidadParaOptativas())
	{
		cumpleRestriccionCantMaterias =  this->cantidadMateriasOptativasMinimas <= cantMateriasOptativas;
	}

	return cumpleRestriccionCreditos && cumpleRestriccionCantMaterias;
};


bool InformacionCarrera::HayRestriccionesDeCantidadParaOptativas()
{
	return this->cantidadMateriasOptativasMinimas > 0;
};


bool InformacionCarrera::HayRestriccionesDeCreditosParaOptativas()
{
	return this->creditosMateriasOptativas > 0;
};